home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / bash_114.zip / bash-1.14.2 / machines.h < prev    next >
Text File  |  1994-08-13  |  65KB  |  2,162 lines

  1. /* machines.h --
  2.    Included file in the makefile that gets run through Cpp.  This file
  3.    tells which machines have what features based on the unique machine
  4.    identifier present in Cpp. */
  5.  
  6. /* Copyright (C) 1993 Free Software Foundation, Inc.
  7.  
  8.    This file is part of GNU Bash, the Bourne Again SHell.
  9.  
  10.    Bash is free software; you can redistribute it and/or modify it under
  11.    the terms of the GNU General Public License as published by the Free
  12.    Software Foundation; either version 2, or (at your option) any later
  13.    version.
  14.  
  15.    Bash is distributed in the hope that it will be useful, but WITHOUT ANY
  16.    WARRANTY; without even the implied warranty of MERCHANTABILITY or
  17.    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  18.    for more details.
  19.  
  20.    You should have received a copy of the GNU General Public License along
  21.    with Bash; see the file COPYING.  If not, write to the Free Software
  22.    Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
  23.  
  24. /* **************************************************************** */
  25. /*                                                                  */
  26. /*                Global Assumptions (true for most systems).       */
  27. /*                                                                  */
  28. /* **************************************************************** */
  29.  
  30. /* We make some global assumptions here.  This can be #undef'ed in
  31.    various machine specific entries. */
  32.  
  33. /* If this file is being processed with Gcc, then the user has Gcc. */
  34. #if defined (__GNUC__) && !defined (NeXT)
  35. #  if !defined (HAVE_GCC)
  36. #    define HAVE_GCC
  37. #  endif /* HAVE_GCC */
  38. #endif /* __GNUC__ && !NeXT */
  39.  
  40. /* Assume that all machines have the getwd () system call.  We unset it
  41.    for USG systems. */
  42. #define HAVE_GETWD
  43.  
  44. /* Assume that all systems have a working getcwd () call.  We unset it for
  45.    ISC systems. */
  46. #define HAVE_GETCWD
  47.  
  48. /* Most (but not all) systems have a good, working version of dup2 ().
  49.    For systems that don't have the call (HP/UX), and for systems
  50.    that don't set the open-on-exec flag for the dup'ed file descriptors,
  51.    (Sequents running Dynix, Ultrix), #undef HAVE_DUP2 in the machine
  52.    description. */
  53. #define HAVE_DUP2
  54.  
  55. /* Every machine that has Gcc has alloca as a builtin in Gcc.  If you are
  56.    compiling Bash without Gcc, then you must have alloca in a library,
  57.    in your C compiler, or be able to assemble or compile the alloca source
  58.    that we ship with Bash. */
  59. #define HAVE_ALLOCA
  60.  
  61. /* We like most machines to use the GNU Malloc routines supplied in the
  62.    source code because they provide high quality error checking.  On
  63.    some machines, our malloc () cannot be used (because of library
  64.    conflicts, for example), and for those, you should specifically
  65.    #undef USE_GNU_MALLOC in the machine description. */
  66. #define USE_GNU_MALLOC
  67.  
  68. /* This causes the Gnu malloc library (from glibc) to be used. */
  69. /* #define USE_GNU_MALLOC_LIBRARY */
  70.  
  71. /* Assume that every operating system supplies strchr () and strrchr ()
  72.    in a standard library until proven otherwise. */
  73. #define HAVE_STRCHR
  74.  
  75. /* Hardware-dependent CFLAGS. */
  76. #define MACHINE_CFLAGS
  77.  
  78. /* **************************************************************** */
  79. /*                                    */
  80. /*            Sun Microsystems Machines                  */
  81. /*                                    */
  82. /* **************************************************************** */
  83.  
  84. /* NetBSD running on a sparc. */
  85. #if defined (sparc) && defined (__NetBSD__)
  86. #  define M_MACHINE "sun4"
  87. #  define M_OS "NetBSD"
  88. #  define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  89. #  define SYSDEP_LDFLAGS -static
  90. #  define HAVE_SYS_SIGLIST
  91. #  define HAVE_SETLINEBUF
  92. #  define HAVE_GETGROUPS
  93. #  define HAVE_VFPRINTF
  94. #  define HAVE_STRERROR
  95. #  define VOID_SIGHANDLER
  96. #  define HAVE_DIRENT
  97. #  define HAVE_STRCASECMP
  98. #endif /* sparc && __NetBSD__ */
  99.  
  100. #if defined (sun) && !defined (M_MACHINE)
  101. /* We aren't currently using GNU Malloc on Suns because of a bug in Sun's
  102.    YP which bites us when Sun free ()'s an already free ()'ed address.
  103.    When Sun fixes their YP, we can start using our winning malloc again. */
  104. #undef USE_GNU_MALLOC
  105.  
  106. /* Most Sun systems have signal handler functions that are void. */
  107. #  define VOID_SIGHANDLER
  108.  
  109. /* Most Sun systems have the following. */
  110. #  define HAVE_SYS_SIGLIST
  111. #  define HAVE_SETLINEBUF
  112. #  define HAVE_VFPRINTF
  113. #  define HAVE_GETGROUPS
  114.  
  115. /* Check for SunOS4 or greater. */
  116. #  if defined (SunOS5)
  117. #    define M_OS "SunOS5"
  118. #    define SYSDEP_CFLAGS -DUSGr4 -DUSG -DSolaris -DOPENDIR_NOT_ROBUST \
  119.               -DNO_SBRK_DECL -DINT_GROUPS_ARRAY
  120. #    define EXTRA_LIB_SEARCH_PATH /usr/ccs/lib
  121. #    if !defined (HAVE_GCC)
  122. #      define REQUIRED_LIBRARIES -ldl
  123. #      define SYSDEP_LDFLAGS -Bdynamic
  124. #    endif /* !HAVE_GCC */
  125. #    define HAVE_STRERROR
  126. #    undef HAVE_GETWD
  127. #    undef HAVE_SETLINEBUF
  128. #  endif /* SunOS5 */
  129.  
  130. #  if defined (SunOS4)
  131. #    define M_OS "SunOS4"
  132. #    define SYSDEP_CFLAGS -DBSD_GETPGRP -DOPENDIR_NOT_ROBUST -DTERMIOS_LDISC \
  133.               -DINT_GROUPS_ARRAY
  134. #    define HAVE_DIRENT
  135. #  endif /* SunOS4 */
  136.  
  137. #  if !defined (SunOS4) && !defined (SunOS5)
  138. #    define M_OS "SunOS3"
  139. #    if !defined (sparc) && !defined (__sparc__)
  140. #      undef VOID_SIGHANDLER
  141. #    endif /* !sparc */
  142. #  endif /* !SunOS4 && !SunOS5 */
  143.  
  144. #  if defined (mc68010)
  145. #    define sun2
  146. #    define M_MACHINE "sun2"
  147. #  endif
  148. #  if defined (mc68020)
  149. #    define sun3
  150. #    define M_MACHINE "sun3"
  151. #  endif
  152. #  if defined (sparc) || defined (__sparc__)
  153. #    define sun4
  154. #    define M_MACHINE "sparc"
  155. #  endif
  156. #  if defined (i386)
  157. #    define done386
  158. #    if !defined (SunOS5)
  159. #      define Sun386i
  160. #      define M_MACHINE "Sun386i"
  161. #    else
  162. #      define M_MACHINE "i386"
  163. #    endif
  164. #  endif /* i386 */
  165.  
  166. #endif /* sun && !M_MACHINE */
  167.  
  168. /* **************************************************************** */
  169. /*                                    */
  170. /*            DEC Machines (vax, decstations)           */
  171. /*                                    */
  172. /* **************************************************************** */
  173.  
  174. /* ************************ */
  175. /*                          */
  176. /*     Alpha with OSF/1     */
  177. /*                          */
  178. /* ************************ */
  179. #if defined (__alpha) || defined (alpha)
  180. #  define M_MACHINE "alpha"
  181. #  define M_OS "OSF1"
  182. #  define HAVE_SYS_SIGLIST
  183. #  define HAVE_SETLINEBUF
  184. #  define HAVE_VFPRINTF
  185. #  define HAVE_STRERROR
  186. #  define HAVE_GETGROUPS
  187. #  define VOID_SIGHANDLER
  188. #  define USE_TERMCAP_EMULATION
  189. #  if !defined (__GNUC__)
  190. #    define SYSDEP_CFLAGS -DNLS -D_BSD
  191. #  endif /* !__GNUC__ */
  192. #  undef HAVE_ALLOCA
  193. #  undef USE_GNU_MALLOC
  194. #endif /* __alpha || alpha */
  195.  
  196. /* ************************ */
  197. /*                */
  198. /*        Ultrix        */
  199. /*                */
  200. /* ************************ */
  201. #if defined (ultrix)
  202. #  if defined (MIPSEL)
  203. #    undef HAVE_ALLOCA_H
  204. #    define M_MACHINE "MIPSEL"
  205. #  else /* !MIPSEL */
  206. #    define M_MACHINE "vax"
  207. #  endif /* !MIPSEL */
  208. #  define SYSDEP_CFLAGS -DBSD_GETPGRP -DTERMIOS_MISSING -DTERMIOS_LDISC
  209. #  define M_OS "Ultrix"
  210. #  define HAVE_DIRENT
  211. #  define VOID_SIGHANDLER
  212. #  define HAVE_SYS_SIGLIST
  213. #  define HAVE_SETLINEBUF
  214. #  define HAVE_VFPRINTF
  215. #  define HAVE_GETGROUPS
  216. #  undef HAVE_DUP2
  217. #endif /* ultrix */
  218.  
  219. /* ************************ */
  220. /*                */
  221. /*    VAX 4.3 BSD        */
  222. /*                */
  223. /* ************************ */
  224. #if defined (vax) && !defined (ultrix)
  225. #  define M_MACHINE "vax"
  226. #  define M_OS "Bsd"
  227. #  define HAVE_SETLINEBUF
  228. #  define HAVE_SYS_SIGLIST
  229. #  define HAVE_GETGROUPS
  230. #  define USE_VFPRINTF_EMULATION
  231. #endif /* vax && !ultrix */
  232.  
  233. /* ************************ */
  234. /*                */
  235. /*    Tahoe 4.3 BSD        */
  236. /*                */
  237. /* ************************ */
  238. #if defined (tahoe)
  239. #  define M_MACHINE "tahoe"
  240. #  define M_OS "Bsd"
  241. #  define HAVE_SETLINEBUF
  242. #  define HAVE_SYS_SIGLIST
  243. #  define HAVE_GETGROUPS
  244. #  define HAVE_VFPRINTF
  245. #endif /* tahoe */
  246.  
  247. /* **************************************************************** */
  248. /*                                    */
  249. /*        Machines with MIPSco processors                */
  250. /*                                    */
  251. /* **************************************************************** */
  252.  
  253. /* **************************************** */
  254. /*                        */
  255. /*        SGI Iris/IRIX                */
  256. /*                        */
  257. /* **************************************** */
  258. #if defined (sgi)
  259. #  if defined (Irix3)
  260. #    define M_OS "Irix3"
  261. #    if !defined (HAVE_GCC)
  262. #      undef MACHINE_CFLAGS
  263. #      define MACHINE_CFLAGS -real_frameptr -Wf,-XNl3072
  264. #    endif
  265. #    undef HAVE_ALLOCA
  266. #  endif /* Irix3 */
  267. #  if defined (Irix4)
  268. #    define M_OS "Irix4"
  269. #    if !defined (HAVE_GCC)
  270. #      undef MACHINE_CFLAGS
  271. #      define MACHINE_CFLAGS -Wf,-XNl3072
  272. #    endif
  273. #  endif /* Irix4 */
  274. #  if defined (Irix5)
  275. #    define M_OS "Irix5"
  276. #    if !defined (HAVE_GCC)
  277. #      undef MACHINE_CFLAGS
  278. #      define MACHINE_CFLAGS -Wf,-XNl3072
  279. #    endif
  280. #  endif /* Irix5 */
  281. #  define M_MACHINE "sgi"
  282. #  define HAVE_GETGROUPS
  283. #  define VOID_SIGHANDLER
  284. #  define HAVE_SYS_SIGLIST
  285. #  define HAVE_SETLINEBUF
  286. #  define HAVE_VFPRINTF
  287. #  define REQUIRED_LIBRARIES -lsun
  288.    /* SGI cc uses ansi c features *without* defining __STDC__ */
  289. #  if defined (__EXTENSIONS__) && !defined (__STDC__)
  290. #    define ANSIC -D__STDC__
  291. #  else
  292. #    define ANSIC
  293. #  endif /* !__EXTENSIONS__ || __STDC__ */
  294. #  if defined (Irix5)
  295. #    define SGI_CFLAGS -DUSG -DPGRP_PIPE -DHAVE_BCOPY -DHAVE_GETPW_DECLS \
  296.                -DHAVE_SOCKETS -DNO_SBRK_DECL
  297. #  else
  298. #    define SGI_CFLAGS -DUSG -DPGRP_PIPE -DHAVE_BCOPY -DHAVE_GETPW_DECLS \
  299.                -DHAVE_SOCKETS
  300. #  endif /* !Irix5 */
  301. #  define SYSDEP_CFLAGS SGI_CFLAGS MACHINE_CFLAGS ANSIC
  302. #endif  /* sgi */
  303.  
  304. /* ************************ */
  305. /*                */
  306. /*       NEC EWS 4800        */
  307. /*                */
  308. /* ************************ */
  309. #if defined (nec_ews)
  310. #  if defined (SYSTYPE_SYSV) || defined (USGr4)
  311. #    define M_MACHINE "ews4800"
  312. #    define M_OS "USG"
  313. #    define HAVE_VFPRINTF
  314. #    define VOID_SIGHANDLER
  315. #    define HAVE_STRERROR
  316. #    define HAVE_DUP2
  317. #    undef HAVE_GETWD
  318. #    undef HAVE_RESOURCE /* ? */
  319.      /* Alloca requires either Gcc or cc with -lucb. */
  320. #    if !defined (HAVE_GCC)
  321. #      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  322. #      define REQUIRED_LIBRARIES -lc -lucb
  323. #    endif /* !HAVE_GCC */
  324. #    if defined (MIPSEB)
  325. #      if !defined (HAVE_GCC)
  326. #        undef MACHINE_CFLAGS
  327. #        define MACHINE_CFLAGS -Wf,-XNl3072
  328. #      endif
  329. #      define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4 -DUSGr3 -D_POSIX_JOB_CONTROL
  330. #    else /* !MIPSEB */
  331. #      define SYSDEP_CFLAGS -DUSGr4
  332. #    endif /* MIPSEB */
  333. #  else /* !SYSTYPE_SYSV && !USGr4 */
  334. #    define M_OS "Bsd"
  335. #  endif /* !SYSTYPE_SYSV && !USGr4 */
  336. #  define HAVE_SYS_SIGLIST
  337. #  define HAVE_SETLINEBUF
  338. #  define HAVE_GETGROUPS
  339. #endif /* nec_ews */
  340.  
  341. /* ************************ */
  342. /*                */
  343. /*  Generic MIPS SVR4, 4.2  */
  344. /*                */
  345. /* ************************ */
  346. #if defined (MIPSEB) && defined (USGr4)
  347. #  define M_MACHINE "MIPSEB"
  348. #  define M_OS "USG"
  349. #  if defined (sony) && !defined (HAVE_GCC)
  350. #    undef MACHINE_CFLAGS
  351. #    define MACHINE_CFLAGS -Wf,-XNl3072
  352. #  endif
  353. /* XXX - os/svr4.h -- for the future -- XXX */
  354. #  undef HAVE_GETWD
  355. #  define HAVE_DIRENT
  356. #  define HAVE_STRERROR
  357. #  define HAVE_VFPRINTF
  358. #  define VOID_SIGHANDLER
  359. #  define HAVE_SYS_SIGLIST
  360. #  define HAVE_SETLINEBUF
  361. #  define HAVE_GETGROUPS
  362. /* alloca */
  363. #  if !defined (HAVE_GCC)
  364. #    define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  365. #    define REQUIRED_LIBRARIES -lc -lucb
  366. #  endif /* !HAVE_GCC */
  367. #  if defined (USGr4_2)
  368. #    define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4 -DUSGr4_2
  369. #  else
  370. #    define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4
  371. #  endif /* !USGr4_2 */
  372. #endif
  373.  
  374. /* ************************ */
  375. /*                */
  376. /*        Sony        */
  377. /*                */
  378. /* ************************ */
  379. #if defined (sony) && !defined (M_MACHINE)
  380. #  if defined (MIPSEB)
  381. #    define M_MACHINE "MIPSEB"
  382. #  else /* !MIPSEB */
  383. #    define M_MACHINE "sony"
  384. #  endif /* !MIPSEB */
  385.  
  386. #  if defined (SYSTYPE_SYSV) || defined (USGr4)
  387. #    define M_OS "USG"
  388. #    undef HAVE_GETWD
  389. #    define HAVE_DIRENT
  390. #    define HAVE_STRERROR
  391. #    define HAVE_VFPRINTF
  392. #    define VOID_SIGHANDLER
  393.      /* Alloca requires either Gcc or cc with -lucb. */
  394. #    if !defined (HAVE_GCC)
  395. #      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  396. #      define REQUIRED_LIBRARIES -lc -lucb
  397. #    endif /* !HAVE_GCC */
  398. #    if defined (MIPSEB)
  399. #      if !defined (HAVE_GCC)
  400. #        undef MACHINE_CFLAGS
  401. #        define MACHINE_CFLAGS -Wf,-XNl3072
  402. #      endif
  403. #      define SYSDEP_CFLAGS MACHINE_CFLAGS -DUSGr4
  404. #    else /* !MIPSEB */
  405. #      define SYSDEP_CFLAGS -DUSGr4
  406. #    endif /* !MIPSEB */
  407. #  else /* !SYSTYPE_SYSV && !USGr4 */
  408. #    define M_OS "Bsd"
  409. #    define SYSDEP_CFLAGS -DHAVE_UID_T
  410. #  endif /* !SYSTYPE_SYSV && !USGr4 */
  411. #  define HAVE_SYS_SIGLIST
  412. #  define HAVE_SETLINEBUF
  413. #  define HAVE_GETGROUPS
  414. #endif /* sony */
  415.  
  416. /* ******************************* */
  417. /*                       */
  418. /*  Ardent Titan OS v2.2 and later */
  419. /*                       */
  420. /* ******************************* */
  421. #if defined (ardent)
  422. #  define M_MACHINE "Ardent Titan"
  423. #  define M_OS "Bsd"
  424. #  if defined (titan)
  425. #    undef HAVE_GETGROUPS
  426. #  else
  427. #    define HAVE_GETGROUPS
  428. #  endif /* !titan */
  429. #  define HAVE_SYS_SIGLIST
  430. #  define HAVE_SETLINEBUF
  431. #  define SYSDEP_CFLAGS -43 -w
  432. #  define SYSDEP_LDFLAGS -43
  433. #  undef HAVE_ALLOCA
  434. #  undef USE_GNU_MALLOC
  435. #  undef HAVE_VFPRINTF
  436. #  undef HAVE_DIRENT_H
  437. #endif /* ardent */
  438.  
  439. /* ************************ */
  440. /*                */
  441. /*      Stardent        */
  442. /*                */
  443. /* ************************ */
  444. #if defined (stardent) && !defined (M_MACHINE)
  445. #  define M_MACHINE "Stardent"
  446. #  define M_OS "USG"
  447. #  define HAVE_SYS_SIGLIST
  448. #  define USE_TERMCAP_EMULATION
  449. #  define VOID_SIGHANDLER
  450. #  undef HAVE_GETWD
  451. #  undef HAVE_ALLOCA
  452. #endif /* stardent */
  453.  
  454. /* ******************************** */
  455. /*                    */
  456. /*       MIPS RISC/os            */
  457. /*                    */
  458. /* ******************************** */
  459.  
  460. /* Notes on compiling with "make":
  461.  
  462.    * Place /bsd43/bin in your PATH before /bin.
  463.    * Use `$(CC) -E' instead of `/lib/cpp' in Makefile.
  464. */
  465. #if defined (mips) && (!defined (M_MACHINE) || defined (RiscOS))
  466.  
  467. #  if defined (MIPSEB)
  468. #    define M_MACHINE "MIPSEB"
  469. #  else /* !MIPSEB */
  470. #    if defined (MIPSEL)
  471. #      define M_MACHINE "MIPSEL"
  472. #    else /* !MIPSEL */
  473. #      define M_MACHINE "mips"
  474. #    endif /* !MIPSEL */
  475. #  endif /* !MIPSEB */
  476.  
  477. #  define M_OS "Bsd"
  478.  
  479.    /* Special things for machines from MIPS Co. */
  480. #  define MIPS_CFLAGS -DOPENDIR_NOT_ROBUST -DPGRP_PIPE
  481.  
  482. #  if !defined (HAVE_GCC)
  483. #    undef MACHINE_CFLAGS
  484. #    define MACHINE_CFLAGS -Wf,-XNl3072 -systype bsd43
  485. #  endif /* !HAVE_GCC */
  486. #  define SYSDEP_CFLAGS MACHINE_CFLAGS MIPS_CFLAGS
  487. #  define HAVE_SYS_SIGLIST
  488. #  define HAVE_SETLINEBUF
  489. #  define HAVE_VFPRINTF
  490. #  define HAVE_GETGROUPS
  491. #  undef HAVE_UNISTD_H
  492. #  if !defined (HAVE_RESOURCE)
  493. #    define HAVE_RESOURCE
  494. #  endif /* !HAVE_RESOURCE */
  495.    /* /usr/include/sys/wait.h appears not to work correctly, so why use it? */
  496. #  undef HAVE_WAIT_H
  497. #endif /* mips */
  498.  
  499. /* ************************ */
  500. /*                */
  501. /*      Pyramid        */
  502. /*                */
  503. /* ************************ */
  504. #if defined (pyr)
  505. #  define M_MACHINE "Pyramid"
  506. #  define M_OS "Bsd"
  507. #  if !defined (HAVE_GCC)
  508. #    undef HAVE_ALLOCA
  509. #  endif /* HAVE_GCC */
  510. #  define HAVE_SYS_SIGLIST
  511. #  define HAVE_SETLINEBUF
  512. #  define HAVE_GETGROUPS
  513. #endif /* pyr */
  514.  
  515. /* ************************ */
  516. /*                */
  517. /*        IBMRT        */
  518. /*                */
  519. /* ************************ */
  520. #if defined (ibm032)
  521. #  define M_MACHINE "IBMRT"
  522. #  define M_OS "Bsd"
  523. #  define HAVE_SYS_SIGLIST
  524. #  define HAVE_SETLINEBUF
  525. #  define USE_VFPRINTF_EMULATION
  526.    /* Alloca requires either gcc or hc or pcc with -ma in SYSDEP_CFLAGS. */
  527. #  if !defined (HAVE_GCC)
  528. #    define SYSDEP_CFLAGS -ma -U__STDC__
  529. #  endif /* !HAVE_GCC */
  530. #  define HAVE_GETGROUPS
  531. /* #define USE_GNU_TERMCAP */
  532. #endif /* ibm032 */
  533.  
  534. /* **************************************************************** */
  535. /*                                    */
  536. /*      All Intel 386 Processor Machines are Defined Here!        */
  537. /*                                    */
  538. /* **************************************************************** */
  539.  
  540. #if defined (i386)
  541.  
  542. /* Sequent Symmetry running Dynix/ptx 2.x */
  543. #  if !defined (done386) && defined (_SEQUENT_)
  544. #    define done386
  545. #    define M_MACHINE "Symmetry"
  546. #    define M_OS "Dynix"
  547. #    define DYNIX_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_SETDTABLESIZE \
  548.              -DHAVE_GETPW_DECLS -DHAVE_SOCKETS
  549. #    define SYSDEP_CFLAGS -DUSG -DUSGr3 DYNIX_CFLAGS
  550. #    define HAVE_DIRENT
  551. #    define HAVE_VFPRINTF
  552. #    define VOID_SIGHANDLER
  553. /* Might need to add -lsocket -linet -lnsl to the list of libraries. */
  554. #    define REQUIRED_LIBRARIES -lPW -lseq
  555. #    undef HAVE_GETWD
  556. #    undef HAVE_RESOURCE
  557. #    undef HAVE_ALLOCA
  558. #  endif /* _SEQUENT_ */
  559.  
  560. /* Sequent Symmetry running Dynix (4.2 BSD) */
  561. #  if !defined (done386) && defined (sequent)
  562. #    define done386
  563. #    define M_MACHINE "Symmetry"
  564. #    define M_OS "Bsd"
  565. #    define SYSDEP_CFLAGS -DCPCC -DHAVE_SETDTABLESIZE
  566. #    define HAVE_SETLINEBUF
  567. #    define HAVE_SYS_SIGLIST
  568. #    define HAVE_GETGROUPS
  569. #    define LD_HAS_NO_DASH_L
  570. #    undef HAVE_DUP2
  571. #  endif /* Sequent 386 */
  572.  
  573. /* NeXT 3.x on i386 */
  574. #  if !defined (done386) && defined (NeXT)
  575. #    define done386
  576. #    define M_MACHINE "i386"
  577. #    define M_OS "NeXTstep"
  578. #    define HAVE_VFPRINTF
  579. #    define HAVE_SYS_SIGLIST
  580. #    define HAVE_GETGROUPS
  581. #    define HAVE_STRERROR
  582. #    define VOID_SIGHANDLER
  583. #    if !defined (HAVE_RESOURCE)
  584. #      define HAVE_RESOURCE
  585. #    endif
  586. #    define HAVE_STRCASECMP
  587. #    undef HAVE_GETWD
  588. #    undef HAVE_GETCWD
  589. #    undef USE_GNU_MALLOC
  590. #    undef HAVE_DIRENT_H
  591. #    define SYSDEP_CFLAGS -DNeXT -DMKFIFO_MISSING -DRLOGIN_PGRP_BUG
  592. #  endif
  593.  
  594. /* Generic 386 clone running Mach (4.3 BSD-compatible). */
  595. #  if !defined (done386) && defined (MACH)
  596. #    define done386
  597. #    define M_MACHINE "i386"
  598. #    define M_OS "Bsd"
  599. #    define HAVE_SETLINEBUF
  600. #    define HAVE_SYS_SIGLIST
  601. #    define HAVE_GETGROUPS
  602. #  endif /* i386 && MACH */
  603.  
  604. /* AIX PS/2 1.[23] for the [34]86. */
  605. #  if !defined (done386) && defined (aixpc)
  606. #    define done386
  607. #    define M_MACHINE "aixpc"
  608. #    define M_OS "AIX"
  609. #    define HAVE_VFPRINTF
  610. #    define VOID_SIGHANDLER
  611. #    if defined (AIX_13)    /* AIX PS/2 1.3 */
  612. #      define SYSDEP_CFLAGS -DTERMIOS_LDISC
  613. #      define REQUIRED_LIBRARIES -lc_s
  614. #    else
  615. #      define SYSDEP_CFLAGS -D_BSD -DTERMIOS_LDISC
  616. #      define REQUIRED_LIBRARIES -lbsd -lc_s
  617. #    endif /* !AIX_13 */
  618. #    define HAVE_GETGROUPS
  619. #    if !defined (HAVE_GCC)
  620. #      undef HAVE_ALLOCA
  621. #      undef HAVE_ALLOCA_H
  622. #    endif /* !HAVE_GCC */
  623. #    define USE_TERMCAP_EMULATION
  624. #  endif /* AIXPC i386 */
  625.  
  626. /* System V Release 4 on the 386 */
  627. #  if !defined (done386) && defined (USGr4)
  628. #    define done386
  629. #    define M_MACHINE "i386"
  630. #    define M_OS "USG"
  631. #    define HAVE_DIRENT
  632. #    define HAVE_SYS_SIGLIST
  633. #    define HAVE_VFPRINTF
  634. #    define VOID_SIGHANDLER
  635.      /* Alloca requires either Gcc or cc with -lucb. */
  636. #    if !defined (HAVE_GCC)
  637. #      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  638. #      define REQUIRED_LIBRARIES -lc -lucb
  639. #    endif /* !HAVE_GCC */
  640. #    define HAVE_GETGROUPS
  641. #    if defined (USGr4_2)
  642. #      define SYSDEP_CFLAGS -DUSGr4 -DUSGr4_2 -DNO_SBRK_DECL
  643. #    else
  644. #      define SYSDEP_CFLAGS -DUSGr4
  645. #    endif /* ! USGr4_2 */
  646. #    undef HAVE_GETWD
  647. #  endif /* System V Release 4 on i386 */
  648.  
  649. /* 386 box running Interactive Unix 2.2 or greater. */
  650. #  if !defined (done386) && defined (isc386)
  651. #    define done386
  652. #    define M_MACHINE "isc386"
  653. #    define M_OS "USG"
  654. #    define HAVE_DIRENT
  655. #    define HAVE_VFPRINTF
  656. #    define VOID_SIGHANDLER
  657. #    define HAVE_GETGROUPS
  658. #    define USE_TERMCAP_EMULATION
  659. #    if defined (HAVE_GCC)
  660. #      define SYSDEP_LDFLAGS -posix
  661. #      define ISC_POSIX
  662. #    else
  663. #      define REQUIRED_LIBRARIES -lPW
  664. #      define SYSDEP_LDFLAGS -Xp
  665. #      define ISC_POSIX -Xp
  666. #    endif
  667. #    define ISC_SYSDEPS -DUSGr3 -DPGRP_PIPE -DHAVE_GETPW_DECLS -D_POSIX_SOURCE -DOPENDIR_NOT_ROBUST -DMEMMOVE_MISSING
  668. #    if defined (__STDC__)
  669. #      if defined (HAVE_GCC)
  670. #        define ISC_EXTRA -DO_NDELAY=O_NONBLOCK
  671. #      else
  672. #        define ISC_EXTRA -Dmode_t="unsigned short" -DO_NDELAY=O_NONBLOCK
  673. #      endif /* HAVE_GCC */
  674. #    else
  675. #      define ISC_EXTRA
  676. #    endif /* __STDC__ */
  677. #    define SYSDEP_CFLAGS ISC_SYSDEPS ISC_POSIX ISC_EXTRA
  678. #    undef HAVE_GETWD
  679. #    undef HAVE_GETCWD
  680. #  endif /* isc386 */
  681.  
  682. /* Xenix386 machine (with help from Ronald Khoo <ronald@robobar.co.uk>). */
  683. #  if !defined (done386) && defined (Xenix386)
  684. #    define done386
  685. #    define M_MACHINE "i386"
  686. #    define M_OS "Xenix"
  687. #    define XENIX_CFLAGS -DUSG -DUSGr3 -DMEMMOVE_MISSING
  688.  
  689. #    if defined (XENIX_22)
  690. #      define XENIX_EXTRA -DREVERSED_SETVBUF_ARGS
  691. #      define REQUIRED_LIBRARIES -lx
  692. #    else /* !XENIX_22 */
  693. #      define HAVE_DIRENT
  694. #      if defined (XENIX_23)
  695. #        define XENIX_EXTRA -DLD_HAS_NO_DASH_L
  696. #        define REQUIRED_LIBRARIES -ldir
  697. #      else /* !XENIX_23 */
  698. #        define XENIX_EXTRA -xenix
  699. #        define SYSDEP_LDFLAGS -xenix
  700. #        define REQUIRED_LIBRARIES -ldir -l2.3
  701. #      endif /* !XENIX_23 */
  702. #    endif /* !XENIX_22 */
  703.  
  704. #    define SYSDEP_CFLAGS XENIX_CFLAGS XENIX_EXTRA
  705. #    define HAVE_VFPRINTF
  706. #    define VOID_SIGHANDLER
  707. #    define ALLOCA_ASM x386-alloca.s
  708. #    define ALLOCA_OBJ x386-alloca.o
  709. #    undef HAVE_ALLOCA
  710. #    undef HAVE_GETWD
  711. #    undef HAVE_RESOURCE
  712. #  endif /* Xenix386 */
  713.  
  714. /* SCO UNIX 3.2 chip@count.tct.com (Chip Salzenberg) */
  715. #  if !defined (done386) && defined (M_UNIX)
  716. #    define done386
  717. #    define M_MACHINE "i386"
  718. #    define M_OS "SCO"
  719. #    define SCO_CFLAGS -DUSG -DUSGr3 -DNO_DEV_TTY_JOB_CONTROL -DPGRP_PIPE
  720. #    if defined (SCOv4)
  721. #      define SYSDEP_CFLAGS SCO_CFLAGS
  722. #    else /* !SCOv4 */
  723. #      define SYSDEP_CFLAGS SCO_CFLAGS -DBROKEN_SIGSUSPEND -DOPENDIR_NOT_ROBUST
  724. #    endif /* !SCOv4 */
  725. #    define HAVE_VFPRINTF
  726. #    define VOID_SIGHANDLER
  727. #    define HAVE_GETGROUPS
  728. #    undef HAVE_GETWD
  729. #    undef HAVE_RESOURCE
  730. /* advice from wbader@cess.lehigh.edu and Eduard.Vopicka@vse.cz */
  731. #    if !defined (HAVE_GCC)
  732. #      define REQUIRED_LIBRARIES -lc_s -lc -lPW
  733. #    else
  734. #      define REQUIRED_LIBRARIES -lc_s -lc
  735. #    endif /* !HAVE_GCC */
  736. #  endif /* SCO Unix on 386 boxes. */
  737.  
  738. #  if !defined (done386) && defined (__OSF1__)
  739. #    define done386
  740. #    define M_MACHINE "i386"
  741. #    define M_OS "OSF1"
  742. #    define HAVE_SYS_SIGLIST
  743. #    define HAVE_SETLINEBUF
  744. #    define HAVE_VFPRINTF
  745. #    define HAVE_STRERROR
  746. #    define HAVE_GETGROUPS
  747. #    define VOID_SIGHANDLER
  748. #    define HAVE_BCOPY
  749. #    define USE_TERMCAP_EMULATION
  750. #    define SYSDEP_CFLAGS -D_BSD
  751. #    define REQUIRED_LIBRARIES -lbsd
  752. #  endif /* OSF/1 */
  753.  
  754. /* BSDI BSD/386 running on a 386 or 486. */
  755. #  if !defined (done386) && defined (__bsdi__)
  756. #    define done386
  757. #    define M_MACHINE "i386"
  758. #    define M_OS "BSD386"
  759. #    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  760. #    define HAVE_SYS_SIGLIST
  761. #    define HAVE_SETLINEBUF
  762. #    define HAVE_GETGROUPS
  763. #    define HAVE_VFPRINTF
  764. #    define HAVE_STRERROR
  765. #    define VOID_SIGHANDLER
  766. #    define HAVE_DIRENT
  767. #    define HAVE_STRCASECMP
  768. #  endif /* !done386 && bsdi */
  769.  
  770. /* NetBSD running on a 386 or 486. */
  771. #  if !defined (done386) && defined (__NetBSD__)
  772. #    define done386
  773. #    define M_MACHINE "i386"
  774. #    define M_OS "NetBSD"
  775. #    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  776. #    define HAVE_SYS_SIGLIST
  777. #    define HAVE_SETLINEBUF
  778. #    define HAVE_GETGROUPS
  779. #    define HAVE_VFPRINTF
  780. #    define HAVE_STRERROR
  781. #    define VOID_SIGHANDLER
  782. #    define HAVE_DIRENT
  783. #    define HAVE_STRCASECMP
  784. #  endif /* !done386 && __NetBSD__ */
  785.  
  786. /* FreeBSD running on a 386 or 486. */
  787. #  if !defined (done386) && defined (__FreeBSD__)
  788. #    define done386
  789. #    define M_MACHINE "i386"
  790. #    define M_OS "FreeBSD"
  791. #    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  792. #    define HAVE_SYS_SIGLIST
  793. #    define HAVE_SETLINEBUF
  794. #    define HAVE_GETGROUPS
  795. #    define HAVE_VFPRINTF
  796. #    define HAVE_STRERROR
  797. #    define VOID_SIGHANDLER
  798. #    define HAVE_DIRENT
  799. #    define HAVE_STRCASECMP
  800. #  endif /* !done386 && __FreeBSD__ */
  801.  
  802. /* Jolitz 386BSD running on a 386 or 486. */
  803. #  if !defined (done386) && defined (__386BSD__)
  804. #    define done386
  805. #    define M_MACHINE "i386"
  806. #    define M_OS "_386BSD"
  807. #    define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  808. #    define HAVE_SYS_SIGLIST
  809. #    define HAVE_SETLINEBUF
  810. #    define HAVE_GETGROUPS
  811. #    define HAVE_VFPRINTF
  812. #    define HAVE_STRERROR
  813. #    define VOID_SIGHANDLER
  814. #    define HAVE_DIRENT
  815. #    define HAVE_STRCASECMP
  816. #  endif /* !done386 && __386BSD__ */
  817.  
  818. #  if !defined (done386) && (defined (__linux__) || defined (linux))
  819. #    define done386
  820. #    define M_MACHINE "i386"
  821. #    define M_OS "Linux"
  822. #    define SYSDEP_CFLAGS -DUSG -DUSGr3 -DHAVE_GETDTABLESIZE -DHAVE_BCOPY \
  823.               -DHAVE_GETPW_DECLS -DHAVE_GETHOSTNAME
  824. #    define REQUIRED_LIBRARIES
  825. #    define HAVE_GETGROUPS
  826. #    define HAVE_STRERROR
  827. #    define VOID_SIGHANDLER
  828. #    define HAVE_SYS_SIGLIST
  829. #    define HAVE_VFPRINTF
  830. #    define HAVE_VARARGS_H
  831. #    define SEARCH_LIB_NEEDS_SPACE
  832. #    if defined (__GNUC__)
  833. #      define HAVE_FIXED_INCLUDES
  834. #    endif /* __GNUC__ */
  835. #    undef USE_GNU_MALLOC
  836. #    undef HAVE_SETLINEBUF
  837. #    undef HAVE_GETWD
  838. #  endif  /* !done386 && __linux__ */
  839.  
  840. /* QNX 4.2 with GCC pt@flard.ocunix.on.ca (Paul Trunley) */
  841. #  if !defined (done386) && defined (qnx)
  842. #    define done386
  843. #    define M_MACHINE "i386"
  844. #    define M_OS "QNX"
  845. #    define SYSDEP_CFLAGS -D_POSIX_SOURCE -O2 -DUSG
  846. #    define HAVE_VFPRINTF
  847. #    define VOID_SIGHANDLER
  848. #    define HAVE_GCC
  849. #    define HAVE_FIXED_INCLUDES
  850. #    define HAVE_STRERROR
  851. #    define HAVE_GETGROUPS
  852. #    undef USE_GNU_MALLOC
  853. #  endif /* QNX 4.2 with GCC */
  854.  
  855. /* Lynx 2.1.0 (Mike Brennen <mbrennen@maverick.intecom.com>) */
  856. #  if !defined (done386) && (defined (__Lynx__) || defined (Lynx))
  857. #    define done386
  858. #    define M_MACHINE "i386"
  859. #    define M_OS "Lynx"
  860. #    define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY
  861. #    define REQUIRED_LIBRARIES -lc_p
  862. #    define HAVE_GETGROUPS
  863. #    define VOID_SIGHANDLER
  864. #    define HAVE_SYS_SIGLIST
  865. #    define HAVE_VFPRINTF
  866. #    define HAVE_VARARGS_H
  867. #    if defined (__GNUC__)
  868. #      define HAVE_FIXED_INCLUDES
  869. #    endif /* __GNUC__ */
  870. /* Actually, Lynx does have unistd.h, but it defines _POSIX_VERSION,
  871.    and doesn't supply a fully compatible job control package.  We just
  872.    pretend that it doesn't have it. */
  873. #  undef HAVE_UNISTD_H
  874. /* Lynx's wait structure reverses w_Stopval and w_Stopsig - don't use it */
  875. #  undef HAVE_WAIT_H
  876. #  undef HAVE_DIRENT_H
  877. #  endif  /* !done386 && __Lynx__ */
  878.  
  879. /* Assume a generic 386 running Sys V Release 3. */
  880. #  if !defined (done386)
  881. #    define done386
  882. #    define M_MACHINE "i386"
  883. #    define M_OS "USG"
  884. #    define SYSDEP_CFLAGS -DUSGr3
  885. #    define HAVE_VFPRINTF
  886. #    define VOID_SIGHANDLER
  887.      /* Alloca requires either Gcc or cc with libPW.a */
  888. #    if !defined (HAVE_GCC)
  889. #      define REQUIRED_LIBRARIES -lPW
  890. #    endif /* !HAVE_GCC */
  891. #    undef HAVE_GETWD
  892. #  endif /* Generic i386 Box running Sys V release 3. */
  893. #endif /* All i386 Machines with an `i386' define in cpp. */
  894.  
  895. /* **************************************************************** */
  896. /*                                                        */
  897. /*                     Alliant FX/800                             */
  898. /*                                                        */
  899. /* **************************************************************** */
  900. /* Original descs flushed.  FX/2800 machine desc 1.13 bfox@ai.mit.edu.
  901.    Do NOT use -O with the stock compilers.  If you must optimize, use
  902.    -uniproc with fxc, and avoid using scc. */
  903. #if defined (alliant)
  904. #  define M_MACHINE "alliant"
  905. #  define M_OS "Concentrix"
  906. #  define HAVE_SYS_SIGLIST
  907. #  define HAVE_SETLINEBUF
  908. #  define HAVE_GETGROUPS
  909. #  define HAVE_VFPRINTF
  910. #  define HAVE_RESOURCE
  911. #  define VOID_SIGHANDLER
  912. #  define HAVE_STRERROR
  913. #  define USE_GNU_MALLOC
  914. #  define LD_HAS_NO_DASH_L
  915. #  define SYSDEP_CFLAGS -DTERMIOS_MISSING -DMKFIFO_MISSING \
  916.     -DBSD_GETPGRP -DRLOGIN_PGRP_BUG -w
  917.    /* Actually, Alliant does have unistd.h, but it defines _POSIX_VERSION,
  918.       and doesn't supply a fully compatible job control package.  We just
  919.       pretend that it doesn't have it. */
  920. #  undef HAVE_UNISTD_H
  921. #  undef HAVE_ALLOCA
  922. #endif /* alliant */
  923.  
  924. /* **************************************************************** */
  925. /*                                                                  */
  926. /*            Motorola Delta series running System V R3V6/7         */
  927. /*                                                                  */
  928. /* **************************************************************** */
  929. /* Contributed by Robert L. McMillin (rlm@ms_aspen.hac.com).  */
  930.  
  931. #if defined (m68k) && defined (sysV68)
  932. #  define M_MACHINE "Delta"
  933. #  define M_OS "USG"
  934. #  define SYSDEP_CFLAGS -DUSGr3
  935. #  define VOID_SIGHANDLER
  936. #  define HAVE_VFPRINTF
  937. #  define REQUIRED_LIBRARIES -lm881
  938. #  undef HAVE_GETWD
  939. #  undef HAVE_RESOURCE
  940. #  undef HAVE_DUP2
  941. #  undef HAVE_ALLOCA
  942. #endif /* Delta series */
  943.  
  944. /* **************************************************************** */
  945. /*                                    */
  946. /*              Gould 9000 - UTX/32 R2.1A                */
  947. /*                                    */
  948. /* **************************************************************** */
  949. #if defined (gould)        /* Maybe should be GOULD_PN ? */
  950. #  define M_MACHINE "gould"
  951. #  define M_OS "Bsd"
  952. #  define HAVE_SYS_SIGLIST
  953. #  define HAVE_SETLINEBUF
  954. #  define HAVE_GETGROUPS
  955. #endif /* gould */
  956.  
  957. /* ************************ */
  958. /*                */
  959. /*        NeXT        */
  960. /*                */
  961. /* ************************ */
  962. #if defined (NeXT) && !defined (M_MACHINE)
  963. #  define M_MACHINE "NeXT"
  964. #  define M_OS "NeXTstep"
  965. #  define HAVE_VFPRINTF
  966. #  define HAVE_SYS_SIGLIST
  967. #  define HAVE_GETGROUPS
  968. #  define HAVE_STRERROR
  969. #  define VOID_SIGHANDLER
  970. #  if !defined (HAVE_RESOURCE)
  971. #    define HAVE_RESOURCE
  972. #  endif
  973. #  define HAVE_STRCASECMP
  974. #  undef HAVE_GETWD
  975. #  undef HAVE_GETCWD
  976. #  undef HAVE_DIRENT_H
  977. #  define SYSDEP_CFLAGS -DMKFIFO_MISSING -DRLOGIN_PGRP_BUG
  978. #  undef USE_GNU_MALLOC
  979. #endif /* NeXT */
  980.  
  981. /* ********************** */
  982. /*                        */
  983. /*       m68k NetBSD      */
  984. /*                        */
  985. /* ********************** */
  986. #if defined (m68k) && defined (__NetBSD__)
  987. #  include <machine/param.h>
  988. #  define M_MACHINE MACHINE
  989. #  define M_OS "NetBSD"
  990. /* os/netbsd.h */
  991. #  define SYSDEP_CFLAGS -DOPENDIR_NOT_ROBUST -DINT_GROUPS_ARRAY
  992. #  define HAVE_SYS_SIGLIST
  993. #  define HAVE_SETLINEBUF
  994. #  define HAVE_GETGROUPS
  995. #  define HAVE_VFPRINTF
  996. #  define HAVE_STRERROR
  997. #  define VOID_SIGHANDLER
  998. #  define HAVE_DIRENT
  999. #endif /* m68k && __NetBSD__ */
  1000.  
  1001. /* ************************ */
  1002. /*                */
  1003. /*    hp9000 4.4 BSD        */
  1004. /*                */
  1005. /* ************************ */
  1006. #if defined (hp9000) && defined (__BSD_4_4__)
  1007. #  define M_MACHINE "hp9000"
  1008. #  define M_OS "BSD_4_4"
  1009. #  define HAVE_SYS_SIGLIST
  1010. #  define HAVE_SETLINEBUF
  1011. #  define HAVE_GETGROUPS
  1012. #  define HAVE_STRERROR
  1013. #  define HAVE_VFPRINTF
  1014. #  define VOID_SIGHANDLER
  1015. #  define HAVE_STRCASECMP
  1016. #  define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY -DHAVE_RESOURCE
  1017. #  undef HAVE_ALLOCA
  1018. #endif /* hp9000 && __BSD_4_4__ */
  1019.  
  1020. /* ************************ */
  1021. /*                */
  1022. /*    hp9000 4.3 BSD        */
  1023. /*                */
  1024. /* ************************ */
  1025. #if defined (hp9000) && !defined (hpux) && !defined (M_MACHINE)
  1026. #  define M_MACHINE "hp9000"
  1027. #  define M_OS "Bsd"
  1028. #  undef HAVE_ALLOCA
  1029. #  define HAVE_SYS_SIGLIST
  1030. #  define HAVE_SETLINEBUF
  1031. #  define HAVE_GETGROUPS
  1032. #  define USE_VFPRINTF_EMULATION
  1033. #endif /* hp9000 && !hpux */
  1034.  
  1035. /* ************************ */
  1036. /*                          */
  1037. /*          hpux            */
  1038. /*                          */
  1039. /* ************************ */
  1040. #if defined (hpux)
  1041.  
  1042. /* HPUX comes in several different flavors, from pre-release 6.2 (basically
  1043.    straight USG), to Posix compliant 9.0. */
  1044.  
  1045.    /* HP machines come in several processor types.
  1046.       They are distinguished here. */
  1047. #  if defined (hp9000s200) && !defined (hp9000s300)
  1048. #    define M_MACHINE "hp9000s200"
  1049. #  endif /* hp9000s200 */
  1050. #  if defined (hp9000s300) && !defined (M_MACHINE)
  1051. #    define M_MACHINE "hp9000s300"
  1052. #  endif /* hp9000s300 */
  1053. #  if defined (hp9000s500) && !defined (M_MACHINE)
  1054. #    define M_MACHINE "hp9000s500"
  1055. #  endif /* hp9000s500 */
  1056. #  if defined (hp9000s700) && !defined (M_MACHINE)
  1057. #    define M_MACHINE "hp9000s700"
  1058. #  endif /* hp9000s700 */
  1059. #  if defined (hp9000s800) && !defined (M_MACHINE)
  1060. #    define M_MACHINE "hp9000s800"
  1061. #  endif /* hp9000s800 */
  1062. #  if defined (hppa) && !defined (M_MACHINE)
  1063. #    define M_MACHINE "hppa"
  1064. #  endif /* hppa */
  1065.  
  1066. /* Define the OS as the particular type that we are using. */
  1067. /* This is for HP-UX systems earlier than HP-UX 6.2 -- no job control. */
  1068. #  if defined (HPUX_USG)
  1069. #    define M_OS "USG"
  1070. #    define HPUX_CFLAGS -Dhpux
  1071. #    define REQUIRED_LIBRARIES -lPW -lBSD
  1072. #    undef HAVE_WAIT_H
  1073. #    define HPUX_EXTRA
  1074. #  else /* !HPUX_USG */
  1075.  
  1076. /* All of the other operating systems need HPUX to be defined. */
  1077. #    define HPUX_EXTRA -DHPUX -DHAVE_GETHOSTNAME -DUSG
  1078.  
  1079.      /* HPUX 6.2 .. 6.5 require -lBSD for getwd (), and -lPW for alloca (). */
  1080. #    if defined (HPUX_6)
  1081. #      define M_OS "hpux_6"
  1082. #      define REQUIRED_LIBRARIES -lPW -lBSD
  1083. #      undef HAVE_ALLOCA
  1084. #      undef HAVE_WAIT_H
  1085. #    endif /* HPUX_6 */
  1086.  
  1087.      /* On HP-UX 7.x, we do not link with -lBSD, so we don't have getwd (). */
  1088. #    if defined (HPUX_7)
  1089. #      define M_OS "hpux_7"
  1090. #      define REQUIRED_LIBRARIES -lPW
  1091. #      define HPUX_CFLAGS -DHAVE_SOCKETS
  1092. #      undef HAVE_GETWD
  1093. #      undef USE_GNU_MALLOC
  1094. #    endif /* HPUX_7 */
  1095.  
  1096.      /* HP-UX 8.x systems do not have a working alloca () on all platforms.
  1097.     This can cause us problems, especially when globbing.  HP has the
  1098.     same YP bug as Sun, so we #undef USE_GNU_MALLOC. */
  1099. #    if defined (HPUX_8)
  1100. #      define M_OS "hpux_8"
  1101. #      if !defined (__GNUC__)
  1102. #        undef HAVE_ALLOCA
  1103. #      endif
  1104. #      undef HAVE_GETWD
  1105. #      undef USE_GNU_MALLOC
  1106. #      define HPUX_CFLAGS -DNO_SBRK_DECL -DHAVE_SOCKETS
  1107. #    endif /* HPUX_8 */
  1108.  
  1109.      /* HP-UX 9.0 reportedly fixes the alloca problems present in the 8.0
  1110.         release.  If so, -lPW is required to include it. */
  1111. #    if defined (HPUX_9)
  1112. #      define M_OS "hpux_9"
  1113. #      if !defined (__GNUC__)
  1114. #        undef HAVE_ALLOCA
  1115. #      endif
  1116. #      undef HAVE_GETWD
  1117. #      undef USE_GNU_MALLOC
  1118. #      undef HAVE_RESOURCE
  1119. #      define HPUX_CFLAGS -DNO_SBRK_DECL -DHAVE_SOCKETS -DHAVE_GETHOSTNAME
  1120. #    endif /* HPUX_9 */
  1121.  
  1122. #  endif /* !HPUX_USG */
  1123.  
  1124.    /* All of the HPUX systems that we have tested have the following. */
  1125. #  define HAVE_DIRENT
  1126. #  define HAVE_VFPRINTF
  1127. #  define VOID_SIGHANDLER
  1128. #  define HAVE_GETGROUPS
  1129. #  define HAVE_STRERROR
  1130. #  define USE_TERMCAP_EMULATION
  1131. #  define SEARCH_LIB_NEEDS_SPACE
  1132.  
  1133. #  if defined (HPUX_CFLAGS)
  1134. #    define SYSDEP_CFLAGS HPUX_CFLAGS HPUX_EXTRA
  1135. #  else /* !HPUX_CFLAGS */
  1136. #    define SYSDEP_CFLAGS HPUX_EXTRA
  1137. #  endif /* !HPUX_CFLAGS */
  1138.  
  1139. #endif /* hpux */
  1140.  
  1141. /* ************************ */
  1142. /*                          */
  1143. /*        MIPS OSF/1        */
  1144. /*                          */
  1145. /* ************************ */
  1146. #  if defined (MIPSEL) && defined (__OSF1__)
  1147. #    define M_MACHINE "mips"
  1148. #    define M_OS "OSF1"
  1149. #    define HAVE_SYS_SIGLIST
  1150. #    define HAVE_SETLINEBUF
  1151. #    define HAVE_VFPRINTF
  1152. #    define HAVE_STRERROR
  1153. #    define HAVE_GETGROUPS
  1154. #    define VOID_SIGHANDLER
  1155. #    define HAVE_BCOPY
  1156. #    define USE_TERMCAP_EMULATION
  1157. #    define SYSDEP_CFLAGS -D_BSD
  1158. #    define REQUIRED_LIBRARIES -lbsd
  1159. #  endif /* MIPSEL && __OSF1__ */
  1160.  
  1161. /* ************************ */
  1162. /*                          */
  1163. /*        HP OSF/1          */
  1164. /*                          */
  1165. /* ************************ */
  1166. #if defined (__hp_osf)
  1167. #  define M_MACHINE "HPOSF1"
  1168. #  define M_OS "OSF1"
  1169. #  define SYSDEP_CFLAGS -q no_sl_enable
  1170. #  define SYSDEP_LDFLAGS -q lang_level:classic
  1171. #  define REQUIRED_LIBRARIES -lPW
  1172. #  define HAVE_SETLINEBUF
  1173. #  define HAVE_VFPRINTF
  1174. #  define VOID_SIGHANDLER
  1175. #  define HAVE_GETGROUPS
  1176. #  define HAVE_STRERROR
  1177. #  undef HAVE_ALLOCA
  1178. #endif /* __hp_osf */
  1179.  
  1180. /* ************************ */
  1181. /*                          */
  1182. /*        KSR1 OSF/1        */
  1183. /*                          */
  1184. /* ************************ */
  1185. #if defined (__ksr1__)
  1186. #  define M_MACHINE "KSR1"
  1187. #  define M_OS "OSF1"
  1188. #  define HAVE_SETLINEBUF
  1189. #  define HAVE_VFPRINTF
  1190. #  define VOID_SIGHANDLER
  1191. #  define HAVE_GETGROUPS
  1192. #  define HAVE_STRERROR
  1193. #  define SYSDEP_CFLAGS -DHAVE_GETDTABLESIZE -DHAVE_BCOPY -DHAVE_UID_T
  1194. #  undef HAVE_ALLOCA
  1195. #  undef USE_GNU_MALLOC
  1196. #endif /* ksr1 */
  1197.  
  1198. /* ************************ */
  1199. /*                          */
  1200. /*   Intel Paragon - OSF/1  */
  1201. /*                          */
  1202. /* ************************ */
  1203. #if defined (__i860) && defined (__PARAGON__)
  1204. #  define M_MACHINE "Paragon"
  1205. #  define M_OS "OSF1"
  1206. #  define HAVE_GETGROUPS
  1207. #  define HAVE_SETLINEBUF
  1208. #  define HAVE_VFPRINTF
  1209. #  define VOID_SIGHANDLER
  1210. #  define HAVE_STRERROR
  1211. #  define HAVE_SYS_SIGLIST
  1212. #endif /* __i860 && __PARAGON__ */
  1213.  
  1214. /* ************************ */
  1215. /*                          */
  1216. /* IBM AIX/ESA (OSF/1)      */
  1217. /*                          */
  1218. /* ************************ */
  1219. #if defined(AIXESA) || (defined(__ibmesa) && defined(_AIX))
  1220. #  define M_MACHINE "IBMESA"
  1221. #  define M_OS "OSF1"
  1222. #  define HAVE_GETGROUPS
  1223. #  define HAVE_SETLINEBUF
  1224. #  define HAVE_VPRINTF
  1225. #  define VOID_SIGHANDLER
  1226. #  define HAVE_STRERROR
  1227. #  define HAVE_SYS_SIGLIST
  1228. #  define HAVE_ALLOCA_H        /* hack for AIX/ESA, which has malloc.h */
  1229. #  undef USE_GNU_MALLOC
  1230. #endif /* AIXESA || (__ibmesa && _AIX) */
  1231.  
  1232. /* ************************ */
  1233. /*                          */
  1234. /*   Intel i860  -- SVR4    */
  1235. /*                          */
  1236. /* ************************ */
  1237. #if defined (__i860) && defined (USGr4) && !defined (M_MACHINE)
  1238. #  define M_MACHINE "i860"
  1239. #  define M_OS "USG"
  1240. #  define HAVE_DIRENT
  1241. #  define HAVE_SYS_SIGLIST
  1242. #  define HAVE_VFPRINTF
  1243. #  define VOID_SIGHANDLER
  1244. #  define HAVE_GETGROUPS
  1245. #  if !defined (HAVE_GCC) && !defined (HAVE_ALLOCA_H)
  1246. #    undef HAVE_ALLOCA
  1247. #  endif /* !HAVE_GCC && !HAVE_ALLOCA_H */
  1248. #  if defined (USGr4_2)
  1249. #    define SYSDEP_CFLAGS -DUSGr4 -DUSGr4_2
  1250. #  else
  1251. #    define SYSDEP_CFLAGS -DUSGr4
  1252. #  endif /* ! USGr4_2 */
  1253. #  undef HAVE_GETWD
  1254. #endif /* __i860 && USGr4 */
  1255.  
  1256. /* ************************ */
  1257. /*                */
  1258. /*        Xenix286        */
  1259. /*                */
  1260. /* ************************ */
  1261. #if defined (Xenix286)
  1262. #  define M_MACHINE "i286"
  1263. #  define M_OS "Xenix"
  1264.  
  1265. #  define XENIX_CFLAGS -DUSG -DUSGr3 -DMEMMOVE_MISSING
  1266.  
  1267. #  if defined (XENIX_22)
  1268. #    define XENIX_EXTRA -DREVERSED_SETVBUF_ARGS
  1269. #    define REQUIRED_LIBRARIES -lx
  1270. #  else /* !XENIX_22 */
  1271. #    define HAVE_DIRENT
  1272. #    if defined (XENIX_23)
  1273. #      define XENIX_EXTRA -DLD_HAS_NO_DASH_L
  1274. #      define REQUIRED_LIBRARIES -ldir
  1275. #    else /* !XENIX_23 */
  1276. #      define XENIX_EXTRA -xenix
  1277. #      define SYSDEP_LDFLAGS -xenix
  1278. #      define REQUIRED_LIBRARIES -ldir -l2.3
  1279. #    endif /* !XENIX_23 */
  1280. #  endif /* !XENIX_22 */
  1281.  
  1282. #  define SYSDEP_CFLAGS XENIX_CFLAGS XENIX_EXTRA
  1283. #  undef HAVE_ALLOCA
  1284. #  undef HAVE_GETWD
  1285. #  undef HAVE_RESOURCE
  1286. #endif /* Xenix286 */
  1287.  
  1288. /* ************************ */
  1289. /*                */
  1290. /*        convex        */
  1291. /*                */
  1292. /* ************************ */
  1293. #if defined (convex)
  1294. #  define M_MACHINE "convex"
  1295. #  define M_OS "Bsd"
  1296. #  undef HAVE_ALLOCA
  1297. #  define HAVE_SETLINEBUF
  1298. #  define HAVE_SYS_SIGLIST
  1299. #  define HAVE_GETGROUPS
  1300. #endif /* convex */
  1301.  
  1302. /* ************************ */
  1303. /*                          */
  1304. /*          AIX/RT          */
  1305. /*                          */
  1306. /* ************************ */
  1307. #if defined (aix) && !defined (aixpc)
  1308. #  define M_MACHINE "AIXRT"
  1309. #  define M_OS "USG"
  1310. #  define HAVE_DIRENT
  1311. #  define HAVE_VFPRINTF
  1312. #  define HAVE_SYS_SIGLIST
  1313. #  define VOID_SIGHANDLER
  1314. #  define HAVE_GETGROUPS
  1315. #  define USE_TERMCAP_EMULATION
  1316. #  if !defined (HAVE_GCC)
  1317. #    undef MACHINE_CFLAGS
  1318. #    define MACHINE_CFLAGS -a
  1319. #  endif /* !HAVE_GCC */
  1320. #  define SYSDEP_CFLAGS MACHINE_CFLAGS -DNLS -DUSGr3 -DHAVE_BCOPY
  1321. #  undef USE_GNU_MALLOC
  1322. #  undef HAVE_ALLOCA
  1323. #  undef HAVE_RESOURCE
  1324. #endif /* aix && !aixpc */
  1325.  
  1326. /* **************************************** */
  1327. /*                        */
  1328. /*        IBM RISC 6000            */
  1329. /*                        */
  1330. /* **************************************** */
  1331. #if defined (RISC6000) || defined (_IBMR2)
  1332. #  define M_MACHINE "RISC6000"
  1333. #  define M_OS "AIX"
  1334. #  define HAVE_DIRENT
  1335. #  define HAVE_SYS_SIGLIST
  1336. #  define HAVE_SETLINEBUF
  1337. #  define HAVE_VFPRINTF
  1338. #  define VOID_SIGHANDLER
  1339. #  define USE_TERMCAP_EMULATION
  1340. #  define HAVE_GETGROUPS
  1341. #  define SYSDEP_CFLAGS -DNLS -DUSGr3 -DHAVE_BCOPY
  1342. #  undef HAVE_ALLOCA
  1343. #  undef HAVE_GETWD
  1344. #  undef USE_GNU_MALLOC
  1345. #endif /* RISC6000 */
  1346.  
  1347. /* **************************************** */
  1348. /*                        */
  1349. /*    u370 IBM AIX/370            */
  1350. /*                        */
  1351. /* **************************************** */
  1352. #if defined (u370)
  1353. #  if defined (_AIX370)
  1354. #    define M_MACHINE "AIX370"
  1355. #    define M_OS "Bsd"
  1356. #    define REQUIRED_LIBRARIES -lbsd
  1357. #    define HAVE_SETLINEBUF
  1358. #    define HAVE_VFPRINTF
  1359. #    define SYSDEP_CFLAGS -D_BSD
  1360. #    define HAVE_GETGROUPS
  1361. #    define USE_TERMCAP_EMULATION
  1362. #    undef USE_GNU_MALLOC
  1363. #  endif /* _AIX370 */
  1364. #  if defined (USGr4) /* System V Release 4 on 370 series architecture. */
  1365. #    define M_MACHINE "uxp"
  1366. #    define M_OS "USG"
  1367. #    define HAVE_DIRENT
  1368. #    define HAVE_SYS_SIGLIST
  1369. #    define HAVE_VFPRINTF
  1370. #    define USE_GNU_MALLOC
  1371. #    define VOID_SIGHANDLER
  1372. #    if !defined (HAVE_GCC)
  1373. #      undef HAVE_ALLOCA
  1374. #      define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  1375. #      define REQUIRED_LIBRARIES -lc -lucb
  1376. #    endif /* !HAVE_GCC */
  1377. #    define HAVE_GETGROUPS
  1378. #    define HAVE_RESOURCE
  1379. #    define SYSDEP_CFLAGS -DUSGr4 -DNO_SBRK_DECL
  1380. #    endif /* USGr4 */
  1381. #endif /* u370 */
  1382.  
  1383. /* ************************ */
  1384. /*                */
  1385. /*        ATT 3B        */
  1386. /*                */
  1387. /* ************************ */
  1388. #if defined (att3b) || defined (u3b2)
  1389. #  if defined (att3b)
  1390. #    define M_MACHINE "att3b"
  1391. #    define HAVE_SYS_SIGLIST
  1392. #  else /* !att3b */
  1393. #    define M_MACHINE "u3b2"
  1394. #  endif /* !att3b */
  1395. #  define M_OS "USG"
  1396. #  undef HAVE_GETWD
  1397. #  define HAVE_VFPRINTF
  1398. #  define VOID_SIGHANDLER
  1399.    /* For an AT&T Unix before V.3 take out the -DUSGr3 and the HAVE_DIRENT. */
  1400. #  define SYSDEP_CFLAGS -DUSGr3
  1401. #  define HAVE_DIRENT
  1402.    /* Alloca requires either Gcc or cc with libPW.a. */
  1403. #  if !defined (HAVE_GCC)
  1404. #    define REQUIRED_LIBRARIES -lPW
  1405. #  endif /* !HAVE_GCC */
  1406. #endif /* att3b */
  1407.  
  1408. /* ************************ */
  1409. /*                */
  1410. /*        ATT 386        */
  1411. /*                */
  1412. /* ************************ */
  1413. #if defined (att386)
  1414. #  define M_MACHINE "att386"
  1415. #  define M_OS "USG"
  1416. #  undef HAVE_GETWD
  1417.    /* Alloca requires either Gcc or cc with libPW.a. */
  1418. #  if !defined (HAVE_GCC)
  1419. #    define REQUIRED_LIBRARIES -lPW
  1420. #  endif /* HAVE_GCC */
  1421. #  define HAVE_SYS_SIGLIST
  1422. #  define HAVE_VFPRINTF
  1423. #  define VOID_SIGHANDLER
  1424.    /* For an AT&T Unix before V.3 take out the -DUSGr3 and the HAVE_DIRENT. */
  1425. #  define SYSDEP_CFLAGS -DUSGr3
  1426. #  define HAVE_DIRENT
  1427. #endif /* att386 */
  1428.  
  1429. /* ************************ */
  1430. /*                */
  1431. /*     ATT UNIX PC        */
  1432. /*                */
  1433. /* ************************ */
  1434. #if defined (unixpc)
  1435. #  define M_MACHINE "unixpc"
  1436. #  define M_OS "USG"
  1437. #  define HAVE_VFPRINTF
  1438. #  define HAVE_DIRENT
  1439. #  if defined (HAVE_GCC)
  1440. #    define REQUIRED_LIBRARIES -ldirent -shlib
  1441. #  else /* !HAVE_GCC */
  1442. #    define REQUIRED_LIBRARIES -ldirent
  1443. #  endif /* !HAVE_GCC */
  1444. #  undef HAVE_GETWD
  1445. #  undef HAVE_DUP2
  1446. #  undef VOID_SIGHANDLER
  1447. #  undef HAVE_WAIT_H
  1448. #endif /* unixpc */
  1449.  
  1450. /* ************************ */
  1451. /*                */
  1452. /*        Encore        */
  1453. /*                */
  1454. /* ************************ */
  1455. #if defined (MULTIMAX)
  1456. #  if defined (n16)
  1457. #    define M_MACHINE "Multimax32k"
  1458. #  else
  1459. #    define M_MACHINE "Multimax"
  1460. #  endif /* n16 */
  1461. #  if defined (UMAXV)
  1462. #    define M_OS "USG"
  1463. #    define REQUIRED_LIBRARIES -lPW
  1464. #    define SYSDEP_CFLAGS -DUSGr3
  1465. #    define HAVE_DIRENT
  1466. #    define HAVE_VFPRINTF
  1467. #    define USE_TERMCAP_EMULATION
  1468. #    define VOID_SIGHANDLER
  1469. #  else
  1470. #    if defined (CMU)
  1471. #      define M_OS "Mach"
  1472. #    else
  1473. #      define M_OS "Bsd"
  1474. #    endif /* CMU */
  1475. #    define HAVE_SYS_SIGLIST
  1476. #    define HAVE_STRERROR
  1477. #    define HAVE_SETLINEBUF
  1478. #  endif /* UMAXV */
  1479. #  define HAVE_GETGROUPS
  1480. #endif  /* MULTIMAX */
  1481.  
  1482. /* ******************************************** */
  1483. /*                        */
  1484. /*   Encore Series 91 (88K BCS w Job Control)    */
  1485. /*                        */
  1486. /* ******************************************** */
  1487. #if defined (__m88k) && defined (__UMAXV__)
  1488. #  define M_MACHINE "Gemini"
  1489. #  define M_OS "USG"
  1490. #  define REQUIRED_LIBRARIES -lPW
  1491. #  define USE_TERMCAP_EMULATION
  1492. #  define HAVE_DIRENT
  1493. #  define HAVE_GETGROUPS
  1494. #  define HAVE_VFPRINTF
  1495. #  define VOID_SIGHANDLER
  1496. #  define SYSDEP_CFLAGS -q ext=pcc -D_POSIX_JOB_CONTROL -D_POSIX_VERSION \
  1497.             -Dmalloc=_malloc -Dfree=_free -Drealloc=_realloc
  1498. #endif  /* m88k && __UMAXV__ */
  1499.  
  1500. /* ******************************************** */
  1501. /*                        */
  1502. /*    System V Release 4 on the ICL DRS6000     */
  1503. /*                        */
  1504. /* ******************************************** */
  1505. #if defined (drs6000)
  1506. #  define M_MACHINE "drs6000"
  1507. #  define M_OS "USG"
  1508. #  define SYSDEP_CFLAGS -Xa -DUSGr4
  1509. #  define SEARCH_LIB_NEEDS_SPACE
  1510. #  define HAVE_DIRENT
  1511. #  define HAVE_SYS_SIGLIST
  1512. #  define HAVE_VFPRINTF
  1513. #  define HAVE_GETGROUPS
  1514. #  define HAVE_STRERROR
  1515. #  define VOID_SIGHANDLER
  1516. #  define USE_GNU_TERMCAP
  1517. #  if !defined (__GNUC__)
  1518. #    undef HAVE_ALLOCA
  1519. #  endif
  1520. #  undef HAVE_ALLOCA_H
  1521. #  undef USE_GNU_MALLOC
  1522. #endif /* drs6000 */
  1523.  
  1524. /* ******************************************** */
  1525. /*                        */
  1526. /*   System V Release 4 on the Sparc (generic)  */
  1527. /*                        */
  1528. /* ******************************************** */
  1529. #if defined (sparc) && defined (__svr4__) && !defined (M_MACHINE)
  1530. #  define M_MACHINE "sparc"
  1531. #  define M_OS "SVR4"
  1532. #  define SYSDEP_CFLAGS -DUSG -DUSGr4 -DHAVE_UID_T
  1533. #  define HAVE_DIRENT
  1534. #  define HAVE_VFPRINTF
  1535. #  define HAVE_GETGROUPS
  1536. #  define HAVE_STRERROR
  1537. #  define VOID_SIGHANDLER
  1538. #  define USE_GNU_TERMCAP
  1539. #  if !defined (__GNUC__)
  1540. #    undef HAVE_ALLOCA
  1541. #  endif
  1542. #  undef HAVE_BCOPY
  1543. #  undef HAVE_GETWD
  1544. #  undef USE_GNU_MALLOC
  1545. #endif /* sparc && __svr4__ */
  1546.  
  1547. /* ******************************************** */
  1548. /*                        */
  1549. /*  System V Release 4 on the Commodore Amiga   */
  1550. /*                        */
  1551. /* ******************************************** */
  1552. #if defined (amiga)
  1553. #  define M_MACHINE "amiga"
  1554. #  define M_OS "USG"
  1555. #  define SYSDEP_CFLAGS -DUSGr4
  1556. #  if !defined (HAVE_GCC)
  1557. #    define EXTRA_LIB_SEARCH_PATH /usr/ucblib
  1558. #    define REQUIRED_LIBRARIES -lc -lucb
  1559. #  endif /* !HAVE_GCC */
  1560. #  define HAVE_DIRENT
  1561. #  define HAVE_SYS_SIGLIST
  1562. #  define HAVE_VFPRINTF
  1563. #  define VOID_SIGHANDLER
  1564. #  define HAVE_GETGROUPS
  1565. #  define HAVE_STRERROR
  1566. #  undef HAVE_GETWD
  1567. #  undef USE_GNU_MALLOC
  1568. #endif /* System V Release 4 on amiga */
  1569.  
  1570. /* ************************ */
  1571. /*                */
  1572. /*        clipper        */
  1573. /*                */
  1574. /* ************************ */
  1575. /* This is for the Orion 1/05 (A BSD 4.2 box based on a Clipper processor) */
  1576. #if defined (clipper) && !defined (M_MACHINE)
  1577. #  define M_MACHINE "clipper"
  1578. #  define M_OS "Bsd"
  1579. #  define HAVE_SETLINEBUF
  1580. #  define HAVE_GETGROUPS
  1581. #endif  /* clipper */
  1582.  
  1583. /* ******************************** */
  1584. /*                    */
  1585. /*    Integrated Solutions 68020?   */
  1586. /*                    */
  1587. /* ******************************** */
  1588. #if defined (is68k)
  1589. #  define M_MACHINE "is68k"
  1590. #  define M_OS "Bsd"
  1591. #  define HAVE_SYS_SIGLIST
  1592. #  define HAVE_SETLINEBUF
  1593. #  define HAVE_GETGROUPS
  1594. #  define USE_VFPRINTF_EMULATION
  1595. #  undef HAVE_ALLOCA
  1596. #endif /* is68k */
  1597.  
  1598. /* ******************************** */
  1599. /*                    */
  1600. /*       Omron Luna/Mach 2.5        */
  1601. /*                    */
  1602. /* ******************************** */
  1603. #if defined (luna88k)
  1604. #  define M_MACHINE "Luna88k"
  1605. #  define M_OS "Bsd"
  1606. #  define HAVE_SYS_SIGLIST
  1607. #  define USE_GNU_MALLOC
  1608. #  define HAVE_SETLINEBUF
  1609. #  define HAVE_VFPRINTF
  1610. #  define HAVE_GETGROUPS
  1611. #  define HAVE_VFPRINTF
  1612. #endif /* luna88k */
  1613.  
  1614. /* ************************ */
  1615. /*                */
  1616. /*   BBN Butterfly GP1000   */
  1617. /*   Mach 1000 v2.5        */
  1618. /*                */
  1619. /* ************************ */
  1620. #if defined (butterfly) && defined (BFLY1)
  1621. #define M_MACHINE "BBN Butterfly"
  1622. #define M_OS "Mach 1000"
  1623. #define HAVE_SETLINEBUF
  1624. #define HAVE_SYS_SIGLIST
  1625. #define HAVE_GETGROUPS
  1626. #define HAVE_VFPRINTF
  1627. #  ifdef BUILDING_MAKEFILE
  1628. MAKE = make
  1629. #  endif /* BUILDING_MAKEFILE */
  1630. #endif /* butterfly */
  1631.  
  1632. /* **************************************** */
  1633. /*                        */
  1634. /*        Apollo/SR10.2/BSD4.3        */
  1635. /*                        */
  1636. /* **************************************** */
  1637. /* This is for the Apollo DN3500 running SR10.2 BSD4.3 */
  1638. #if defined (apollo)
  1639. #  define M_MACHINE "apollo"
  1640. #  define M_OS "Bsd"
  1641. #  define SYSDEP_CFLAGS -D_POSIX_VERSION -D_INCLUDE_BSD_SOURCE \
  1642.             -D_INCLUDE_POSIX_SOURCE -DTERMIOS_MISSING \
  1643.             -DBSD_GETPGRP -Dpid_t=int
  1644. #  define HAVE_SYS_SIGLIST
  1645. #  define HAVE_SETLINEBUF
  1646. #  define HAVE_GETGROUPS
  1647. #endif /* apollo */
  1648.  
  1649. /* ************************ */
  1650. /*                */
  1651. /*    DG AViiON        */
  1652. /*                */
  1653. /* ************************ */
  1654. /* This is for the DG AViiON box (runs DG/UX with both AT&T & BSD features.) */
  1655. /* DG/UX comes standard with Gcc. */
  1656. #if defined (__DGUX__) || defined (DGUX)
  1657. #  define M_OS "DGUX"
  1658. #  if !defined (_M88KBCS_TARGET)
  1659. #    define M_MACHINE "AViiON"
  1660. #    define REQUIRED_LIBRARIES -ldgc
  1661. #  else /* _M88KBCS_TARGET */
  1662. #    define M_MACHINE "m88kBCS_AV"
  1663. #    undef MACHINE_CFLAGS
  1664. #    define MACHINE_CFLAGS -D_M88K_SOURCE
  1665. #    undef HAVE_RESOURCE
  1666. #  endif /* _M88KBCS_TARGET */
  1667. #  define SYSDEP_CFLAGS MACHINE_CFLAGS -D_DGUX_SOURCE -DPGRP_PIPE -DUSG
  1668. #  define HAVE_GCC
  1669. #  define HAVE_FIXED_INCLUDES
  1670. #  define HAVE_STRERROR
  1671. #  define HAVE_GETGROUPS
  1672. #  define VOID_SIGHANDLER
  1673. #  undef HAVE_GETWD
  1674. #  undef USE_GNU_MALLOC
  1675.  
  1676. /* If you want to build bash for M88K BCS compliance on a DG/UX 5.4
  1677.    or above system, do the following:
  1678.      - If you have built in this directory before run "make clean" to
  1679.        endure the Bash directory is clean.
  1680.      - Run "eval `sde-target m88kbcs`" to set the software development
  1681.        environment to build BCS objects.
  1682.      - Run "make".
  1683.      - Do "eval `sde-target default`" to reset the SDE. */
  1684. #endif /* __DGUX__ */
  1685.  
  1686. /* ************************ */
  1687. /*                */
  1688. /*    Harris Night Hawk        */
  1689. /*                */
  1690. /* ************************ */
  1691. /* This is for the Harris Night Hawk family. */
  1692. #if defined (_CX_UX)
  1693. #  if defined (_M88K)
  1694. #    define M_MACHINE "nh4000"
  1695. #  else /* !_M88K */
  1696. #    if defined (hcx)
  1697. #      define M_MACHINE "nh2000"
  1698. #    else /* !hcx */
  1699. #      if defined (gcx)
  1700. #        define M_MACHINE "nh3000"
  1701. #      endif /* gcx */
  1702. #    endif /* !hcx */
  1703. #  endif /* !_M88K */
  1704. #  define M_OS "USG"
  1705. #  define SYSDEP_CFLAGS -g -Xa -v -Dgetwd=bash_getwd -D_POSIX_SOURCE \
  1706.             -D_POSIX_JOB_CONTROL
  1707. #  define USE_TERMCAP_EMULATION
  1708. #  define HAVE_VFPRINTF
  1709. #  define HAVE_GETGROUPS
  1710. #  define VOID_SIGHANDLER
  1711. #  undef USE_GNU_MALLOC
  1712. #  undef HAVE_GETWD
  1713. #endif /* _CX_UX */
  1714.  
  1715. /* **************************************** */
  1716. /*                        */
  1717. /*            Tektronix                */
  1718. /*                        */
  1719. /* **************************************** */
  1720. /* These are unproven as yet. */
  1721. #if defined (Tek4132)
  1722. #  define M_MACHINE "Tek4132"
  1723. #  define M_OS "Bsd"
  1724. #  define HAVE_SYS_SIGLIST
  1725. #  define HAVE_SETLINEBUF
  1726. #  define HAVE_GETGROUPS
  1727. #endif /* Tek4132 */
  1728.  
  1729. #if defined (Tek4300)
  1730. #  define M_MACHINE "Tek4300"
  1731. #  define M_OS "Bsd"
  1732. #  define HAVE_SYS_SIGLIST
  1733. #  define HAVE_SETLINEBUF
  1734. #  define HAVE_GETGROUPS
  1735. #endif /* Tek4300 */
  1736.  
  1737. /* ************************ */
  1738. /*                          */
  1739. /*     Tektronix XD88       */
  1740. /*                          */
  1741. /* ************************ */
  1742. #if defined (m88k) && defined (XD88)
  1743. #  define M_MACHINE "XD88"
  1744. #  define M_OS "USG"
  1745. #  define HAVE_DIRENT
  1746. #  define HAVE_VFPRINTF
  1747. #  define HAVE_GETCWD
  1748. #  define VOID_SIGHANDLER
  1749. #  define HAVE_GETGROUPS
  1750. #  undef HAVE_GETWD
  1751. #  undef HAVE_ALLOCA
  1752. #endif /* m88k && XD88 */
  1753.  
  1754. /* ************************ */
  1755. /*                          */
  1756. /*     Motorola M88100      */
  1757. /*                          */
  1758. /* ************************ */
  1759. #if defined (m88k) && (defined (M88100) || defined (USGr4))
  1760. #  define M_MACHINE "M88100"
  1761. #  define M_OS "USG"
  1762. #  if defined (USGr4)
  1763. #    define SYSDEP_CFLAGS -DUSGr4 -D_POSIX_JOB_CONTROL
  1764. #  else
  1765. #    define SYSDEP_CFLAGS -D_POSIX_JOB_CONTROL
  1766. #  endif
  1767. #  define HAVE_DIRENT
  1768. #  define HAVE_VFPRINTF
  1769. #  define VOID_SIGHANDLER
  1770. #  define HAVE_GETGROUPS
  1771. #  undef HAVE_GETWD
  1772. #  if !defined (USGr4)
  1773. #    undef HAVE_GETCWD
  1774. #  endif
  1775. #  undef HAVE_ALLOCA
  1776. #endif /* m88k && M88100 */
  1777.  
  1778. /* ************************ */
  1779. /*                */
  1780. /*     Sequent Balances     */
  1781. /*       (Dynix 3.x)        */
  1782. /* ************************ */
  1783. #if defined (sequent) && !defined (M_MACHINE)
  1784. #  define M_MACHINE "Sequent"
  1785. #  define M_OS "Bsd"
  1786. #  define HAVE_SYS_SIGLIST
  1787. #  define HAVE_SETLINEBUF
  1788. #  define HAVE_GETGROUPS
  1789. #  define LD_HAS_NO_DASH_L
  1790. #  undef HAVE_DUP2
  1791. #endif /* sequent */
  1792.  
  1793. /* ****************************************** */
  1794. /*                          */
  1795. /*    NCR Tower 32, System V Release 3          */
  1796. /*                          */
  1797. /* ****************************************** */
  1798. #if defined (tower32)
  1799. #  define M_MACHINE "tower32"
  1800. #  define M_OS "USG"
  1801. #  if !defined (HAVE_GCC)
  1802. #    define REQUIRED_LIBRARIES -lPW
  1803.      /* Disable stack/frame-pointer optimization, incompatible with alloca */
  1804. #    undef MACHINE_CFLAGS
  1805. #    define MACHINE_CFLAGS -W2,-aat
  1806. #  endif /* !HAVE_GCC */
  1807. #  define SYSDEP_CFLAGS -DUSGr3 MACHINE_CFLAGS
  1808. #  define HAVE_VFPRINTF
  1809. #  define USE_TERMCAP_EMULATION
  1810. #  define VOID_SIGHANDLER
  1811. #  undef HAVE_GETWD
  1812. #endif /* tower32 */
  1813.  
  1814. /* ************************ */
  1815. /*                */
  1816. /*    Concurrent        */
  1817. /*                */
  1818. /* ************************ */
  1819. #if defined (concurrent)
  1820. #  define M_MACHINE "Concurrent"
  1821. #  if defined (USE_BSD_UNIVERSE)
  1822.      /* Use the BSD universe (`universe ucb') */
  1823. #    define M_OS "Bsd"
  1824. #    define HAVE_SYS_SIGLIST
  1825. #    define HAVE_SETLINEBUF
  1826. #    define HAVE_GETGROUPS
  1827. #  else /* !USE_BSD_UNIVERSE */
  1828.    /* Concurrent 7000 with RTU 6.1A using the ATT universe (`universe att') */
  1829. #    define M_OS "USG"
  1830. #    define SYSDEP_CFLAGS -DHAVE_BCOPY -DHAVE_UID_T -DHAVE_GETDTABLESIZE -Dmc7000
  1831. #    define REQUIRED_LIBRARIES -ljobs
  1832. #    define HAVE_VPRINTF
  1833. #    define HAVE_GETGROUPS
  1834. #    define HAVE_DUP2
  1835. #    define HAVE_DIRENT
  1836. #    define HAVE_SYS_SIGLIST
  1837. #  endif /* !USE_BSD_UNIVERSE */
  1838. #endif /* concurrent */
  1839.  
  1840. /* **************************************************************** */
  1841. /*                                                                  */
  1842. /*             Honeywell Bull X20 (lele@idea.sublink.org)        */
  1843. /*                                                                  */
  1844. /* **************************************************************** */
  1845. #if defined (hbullx20)
  1846. #  define M_MACHINE "Honeywell"
  1847. #  define M_OS "USG"
  1848. #  define SYSDEP_CFLAGS -DUSG
  1849.    /* Bull x20 needs -lposix for struct dirent. */
  1850. #  define REQUIRED_LIBRARIES -lPW -lposix
  1851. #  define HAVE_DIRENT
  1852. #  define HAVE_VFPRINTF
  1853. #  define VOID_SIGHANDLER
  1854. #  define USE_TERMCAP_EMULATION
  1855. #  undef HAVE_GETWD
  1856. #endif  /* hbullx20 */
  1857.  
  1858. /* ************************ */
  1859. /*                */
  1860. /*        CRAY        */
  1861. /*                */
  1862. /* ************************ */
  1863. #if defined (cray)
  1864. #  if defined (Cray1) || defined (Cray2)
  1865. #    define M_MACHINE "Cray"
  1866. #    define CRAY_STACK
  1867. #  endif
  1868. #  if defined (CrayXMP) && !defined (M_MACHINE)
  1869. #    define M_MACHINE "CrayXMP"
  1870. #    define CRAY_STACK -DCRAY_STACKSEG_END=getb67
  1871. #  endif
  1872. #  if defined (CrayYMP) && !defined (M_MACHINE)
  1873. #    define M_MACHINE "CrayYMP"
  1874. #    if RELEASE_LEVEL >= 7000
  1875. #      define CRAY_STACK -DCRAY_STACKSEG_END=GETB67
  1876. #    else
  1877. #      define CRAY_STACK -DCRAY_STACKSEG_END=getb67
  1878. #    endif /* RELEASE_LEVEL < 7000 */
  1879. #  endif
  1880. #  if !defined (M_MACHINE)
  1881. #    define M_MACHINE "Cray"
  1882. #    define CRAY_STACK
  1883. #  endif
  1884. #  define M_OS "Unicos"
  1885. #  define SYSDEP_CFLAGS -DUSG -DPGRP_PIPE -DOPENDIR_NOT_ROBUST CRAY_STACK
  1886. #  define HAVE_VFPRINTF
  1887. #  define HAVE_MULTIPLE_GROUPS
  1888. #  define VOID_SIGHANDLER
  1889. #  define USE_TERMCAP_EMULATION
  1890. #  undef HAVE_ALLOCA
  1891. #  undef HAVE_RESOURCE
  1892. #  undef USE_GNU_MALLOC
  1893. #endif /* cray */
  1894.  
  1895. /* ************************ */
  1896. /*                */
  1897. /*    MagicStation        */
  1898. /*                */
  1899. /* ************************ */
  1900. #if defined (MagicStation)
  1901. #  define M_MACHINE "MagicStation"
  1902. #  define M_OS "USG"
  1903. #  define SYSDEP_CFLAGS -DUSGr4
  1904. #  define HAVE_DIRENT
  1905. #  define HAVE_GETGROUPS
  1906. #  define HAVE_STRERROR
  1907. #  define VOID_SIGHANDLER
  1908. #  undef HAVE_ALLOCA
  1909. #  undef HAVE_GETWD
  1910. #endif /* MagicStation */
  1911.  
  1912. /* ************************ */
  1913. /*                */
  1914. /*       Plexus        */
  1915. /*                */
  1916. /* ************************ */
  1917. #if defined (plexus)
  1918. #  define M_MACHINE "plexus"
  1919. #  define M_OS "USG"
  1920. #  define REQUIRED_LIBRARIES -lndir
  1921. #  define USE_TERMCAP_EMULATION
  1922. #  undef HAVE_DUP2
  1923. #  undef HAVE_GETWD
  1924. #  define HAVE_VFPRINTF
  1925. #  undef HAVE_ALLOCA        /* -lPW doesn't work w/bash-cc? */
  1926. #endif /* plexus */
  1927.  
  1928. /* ************************ */
  1929. /*                */   
  1930. /*     Siemens MX500        */
  1931. /*      (SINIX 5.2x)        */
  1932. /* ************************ */
  1933. #ifdef sinix
  1934. #define M_MACHINE "Siemens MX500"
  1935. #define M_OS "SINIX V5.2x"
  1936. #define USG
  1937. #define HAVE_GETCWD
  1938. #define VOID_SIGHANDLER
  1939. #define HAVE_STRERROR
  1940. #define HAVE_GETGROUPS
  1941. #define HAVE_VFPRINTF
  1942. #define HAVE_POSIX_SIGNALS
  1943. #define HAVE_RESOURCE
  1944. #define USE_GNU_MALLOC
  1945. #define SYSDEP_CFLAGS -DUSGr3 -DUSG
  1946. #define REQUIRED_LIBRARIES syscalls.o
  1947. #undef HAVE_ALLOCA
  1948. #undef HAVE_GETWD
  1949. #endif /* sinix */
  1950.  
  1951. /* ************************ */
  1952. /*                */
  1953. /*  Symmetric 375 (4.2 BSD) */
  1954. /*                */
  1955. /* ************************ */
  1956. #if defined (scs) && !defined (M_MACHINE)
  1957. #  define M_MACHINE "Symmetric_375"
  1958. #  define M_OS "Bsd"
  1959. #  define HAVE_SYS_SIGLIST
  1960. #  define HAVE_GETGROUPS
  1961. #  define HAVE_SETLINEBUF
  1962. #  define USE_VFPRINTF_EMULATION
  1963. #  define USE_GNU_MALLOC
  1964. #  undef HAVE_STRCHR
  1965. #endif /* scs */
  1966.  
  1967. /* ************************ */
  1968. /*                */
  1969. /*    Tandem running SVR3   */
  1970. /*                */
  1971. /* ************************ */
  1972. #if defined (tandem) && !defined (M_MACHINE)
  1973. #  define M_MACHINE "tandem"
  1974. #  define M_OS "USG"
  1975. #  define SYSDEP_CFLAGS -DUSGr3
  1976. #  define HAVE_VFPRINTF
  1977. #  define VOID_SIGHANDLER
  1978.    /* Alloca requires either Gcc or cc with libPW.a */
  1979. #  if !defined (HAVE_GCC)
  1980. #    define REQUIRED_LIBRARIES -lPW
  1981. #  endif /* !HAVE_GCC */
  1982. #  undef HAVE_GETWD
  1983. #endif /* Tandem running SVR3 */
  1984.  
  1985. /* ************************ */
  1986. /*                */
  1987. /*    PCS Cadmus System        */
  1988. /*                */
  1989. /* ************************ */
  1990. #if defined (cadmus) && !defined (M_MACHINE)
  1991. #  define M_MACHINE "cadmus"
  1992. #  define M_OS "BrainDeath"
  1993. #  define SYSDEP_CFLAGS -DUSG
  1994. #  define HAVE_DIRENT
  1995. #  define HAVE_VFPRINTF
  1996. #  define VOID_SIGHANDLER
  1997. #  define USE_TERMCAP_EMULATION
  1998. #  undef HAVE_GETWD
  1999. #  undef HAVE_ALLOCA
  2000. #  undef HAVE_WAIT_H
  2001. #endif /* cadmus */
  2002.  
  2003. /* **************************************************************** */
  2004. /*                                    */
  2005. /*            Generic Entry                   */
  2006. /*                                    */
  2007. /* **************************************************************** */
  2008.  
  2009. /* Use this entry for your machine if it isn't represented here.  It
  2010.    is loosely based on a Vax running 4.3 BSD. */
  2011.  
  2012. #if !defined (M_MACHINE)
  2013. #  define UNKNOWN_MACHINE
  2014. #endif
  2015.  
  2016. #if defined (UNKNOWN_MACHINE)
  2017. #  define M_MACHINE "UNKNOWN_MACHINE"
  2018. #  define M_OS "UNKNOWN_OS"
  2019.  
  2020. /* Required libraries for building on this system. */
  2021. #  define REQUIRED_LIBRARIES
  2022.  
  2023. /* Define HAVE_SYS_SIGLIST if your system has sys_siglist[]. */
  2024. #  define HAVE_SYS_SIGLIST
  2025.  
  2026. /* Undef HAVE_GETWD if your C library does not provide a working version
  2027.    of getwd(). */
  2028. /* #  undef HAVE_GETWD */
  2029.  
  2030. /* Undef HAVE_GETCWD if your C library does not provide a working version
  2031.    of getcwd(). */
  2032. /* #  undef HAVE_GETCWD */
  2033.  
  2034. /* Undef HAVE_ALLOCA if you are not using Gcc, and neither your library
  2035.    nor compiler has a version of alloca ().  In that case, we will use
  2036.    our version of alloca () in alloca.c */
  2037. /* #  undef HAVE_ALLOCA */
  2038.  
  2039. /* Undef USE_GNU_MALLOC if there appear to be library conflicts, or if you
  2040.    especially desire to use your OS's version of malloc () and friends.  We
  2041.    reccommend against this because GNU Malloc has debugging code built in. */
  2042. /* #  undef USE_GNU_MALLOC */
  2043.  
  2044. /* Define USE_GNU_TERMCAP if you want to use the GNU termcap library
  2045.    instead of your system termcap library. */
  2046. /* #  define USE_GNU_TERMCAP */
  2047.  
  2048. /* Define HAVE_SETLINEBUF if your machine has the setlinebuf ()
  2049.    stream library call.  Otherwise, setvbuf () will be used.  If
  2050.    neither of them work, you can edit in your own buffer control
  2051.    based upon your machines capabilities. */
  2052. #  define HAVE_SETLINEBUF
  2053.  
  2054. /* Define HAVE_VFPRINTF if your machines has the vfprintf () library
  2055.    call.  Otherwise, printf will be used.  */
  2056. #  define HAVE_VFPRINTF
  2057.  
  2058. /* Define USE_VFPRINTF_EMULATION if you want to use the BSD-compatible
  2059.    vfprintf() emulation in vprint.c. */
  2060. /* #  define USE_VFPRINTF_EMULATION */
  2061.  
  2062. /* Define HAVE_GETGROUPS if your OS allows you to be in multiple
  2063.    groups simultaneously by supporting the `getgroups' system call. */
  2064. #  define HAVE_GETGROUPS
  2065.  
  2066. /* Define SYSDEP_CFLAGS to be the flags to cc that make your compiler
  2067.    work.  For example, `-ma' on the RT makes alloca () work. */
  2068. /* This is a summary of the semi-machine-independent definitions that
  2069.    can go into SYSDEP_CFLAGS:
  2070.  
  2071.     AFS    -    The Andrew File System is being used
  2072.     AFS_CREATE_BUG - AFS has a bug with file creation if O_CREAT is
  2073.              specified
  2074.     BROKEN_SIGSUSPEND - sigsuspend(2) does not work to wake up processes
  2075.                 on SIGCHLD
  2076.     BSD_GETPGRP -    getpgrp(2) takes a pid argument, a la 4.3 BSD
  2077.     HAVE_BCOPY -    bcopy(3) exists and works as in BSD
  2078.     HAVE_GETDTABLESIZE - getdtablesize(2) exists and works correctly
  2079.     HAVE_GETHOSTNAME - gethostname(2) or gethostname(3) is present and
  2080.                works as in BSD
  2081.     HAVE_GETPW_DECLS - USG machines with the getpw* functions defined in
  2082.                <pwd.h> that cannot handle redefinitions in the
  2083.                bash source
  2084.     HAVE_RESOURCE -    <sys/resource.h> and [gs]rlimit exist and work
  2085.     HAVE_SETDTABLESIZE - setdtablesize(2) exists and works correctly
  2086.     HAVE_SOCKETS - this system has BSD sockets added to a System V base
  2087.     HAVE_UID_T -    Definitions for uid_t and gid_t are in <sys/types.h>
  2088.     INT_GROUPS_ARRAY - the second argument to getgroups(3) is an array
  2089.                of integers
  2090.     MEMMOVE_MISSING - the system does not have memmove(3)
  2091.     MKFIFO_MISSING - named pipes do not work or mkfifo(3) is missing
  2092.     NO_DEV_TTY_JOB_CONTROL - system can't do job control on /dev/tty
  2093.     NO_SBRK_DECL - don't declare sbrk as extern char *sbrk() in
  2094.                lib/malloc/malloc.c
  2095.     OPENDIR_NOT_ROBUST - opendir(3) allows you to open non-directory files
  2096.     PGRP_PIPE -    Requires parent-child synchronization via pipes to
  2097.             make job control work right
  2098.     REVERSED_SETVBUF_ARGS - brain-damaged implementation of setvbuf that
  2099.                 has args 2 and 3 reversed from the SVID and
  2100.                 ANSI standard
  2101.     RLOGIN_PGRP_BUG - processes started by rlogind have a process group
  2102.               of 0
  2103.                  TERMIOS_LDISC - system has a c_line line discipline member in struct
  2104.             termios
  2105.     TERMIOS_MISSING - the termios(3) functions are not present or don't
  2106.               work, even though _POSIX_VERSION is defined
  2107.     USG    -    The machine is running some sort of System V Unix
  2108.     USGr3    -    The machine is running SVR3.x
  2109.     USGr4    -    The machine is running SVR4
  2110.     USGr4_2 -    The machine is running SVR4.2
  2111. */
  2112. #  define SYSDEP_CFLAGS
  2113.  
  2114. /* Define HAVE_STRERROR if your system supplies a definition for strerror ()
  2115.    in the C library, or a macro in a header file. */
  2116. /* #  define HAVE_STRERROR */
  2117.  
  2118. /* Define HAVE_STRCASECMP if your system supplies definitions for the
  2119.    casel-insensitive string comparison functions strcasecmp and strncasemp
  2120.    in the C library or one of the system header files. */
  2121. /* #  define HAVE_STRCASECMP */
  2122.  
  2123. /* Define HAVE_DIRENT if you have the dirent library and a definition of
  2124.    struct dirent.  If not, the BSD directory reading library and struct
  2125.    direct are assumed. */
  2126. /* #  define HAVE_DIRENT */
  2127.  
  2128. /* If your system does not supply /usr/lib/libtermcap.a, but includes
  2129.    the termcap routines as a part of the curses library, then define
  2130.    this.  This is the case on some System V machines. */
  2131. /* #  define USE_TERMCAP_EMULATION */
  2132.  
  2133. /* Define VOID_SIGHANDLER if your system's signal () returns a pointer to
  2134.    a function returning void. */
  2135. /* #  define VOID_SIGHANDLER */
  2136.  
  2137. /* Define EXTRA_LIB_SEARCH_PATH if your required libraries (or standard)
  2138.    ones for that matter) are not normally in the ld search path.  For
  2139.    example, some machines require /usr/ucblib in the ld search path so
  2140.    that they can use -lucb. */
  2141. /* #  define EXTRA_LIB_SEARCH_PATH /usr/ucblib */
  2142.  
  2143. /* Define SEARCH_LIB_NEEDS_SPACE if your native ld requires a space after
  2144.    the -L argument, which gives the name of an alternate directory to search
  2145.    for libraries specified with -llib.  For example, the HPUX ld requires
  2146.    this:
  2147.        -L lib/readline -lreadline
  2148.    instead of:
  2149.        -Llib/readline -lreadline
  2150.  */
  2151. /* #  define SEARCH_LIB_NEEDS_SPACE */
  2152.  
  2153. /* Define LD_HAS_NO_DASH_L if your ld can't grok the -L flag in any way, or
  2154.    if it cannot grok the -l<lib> flag, or both. */
  2155. /* #  define LD_HAS_NO_DASH_L */
  2156.  
  2157. #  if defined (LD_HAS_NO_DASH_L)
  2158. #   undef SEARCH_LIB_NEEDS_SPACE
  2159. #  endif /* LD_HAS_NO_DASH_L */
  2160.  
  2161. #endif  /* UNKNOWN_MACHINE */
  2162.